//
// Created by ta&to on 2022/8/16.
//
#ifndef __LOC_STRING_H
#define __LOC_STRING_H
#include <string.h>
#include <stdint.h>
#include <limits.h>
#include <errno.h>
#include <stdlib.h>
#include <ctype.h>
#include "unix/http_alloc.h"

#define LONG_STR_SIZE      21

char *substring(char* desc, char *src, int len, int start);     //截取字符串
int indexof(char *src, char *target);                           // 查找字符
char * stracat(char* src, char* desc, int size);                // 数据追加
char * trim(char *src);                                         // 去掉前后空格

uint32_t digits10(int64_t v);
int ull2string(char *dst, size_t dstlen, unsigned long long value);
int ll2string(char *dst, size_t dstlen, long long svalue);
int string2ll(const char *s, size_t slen, long long *value);
unsigned long long memtoull(const char *p, int *err);
const char *mempbrk(const char *s, size_t len, const char *chars, size_t charslen);
char *memmapchars(char *s, size_t len, const char *from, const char *to, size_t setlen);
int string2l(const char *s, size_t slen, long *lval);
int hex2dec(char c);
#endif
